#创建一个浏览器对象
import datetime
import os.path
import sys

from selenium import webdriver
from selenium.webdriver.edge.options import Options
from selenium.webdriver.edge.service import Service
from webdriver_manager.microsoft import EdgeChromiumDriverManager


class Driver:
    driver=''
    def __init__(self):
        EdgeIns = EdgeChromiumDriverManager().install()
        EdgeOptions=Options()
        EdgeOptions.page_load_strategy='normal'
        self.driver=webdriver.Edge(service=Service(EdgeIns),options=EdgeOptions)
        #隐式等待：在创建浏览器对象后就可以添加，作用域是driver的整个生命周期
        #显式等待可以添加在代码中
        self.driver.implicitly_wait(3)

    def getScreenShot(self):
        #图片名称：2024-11-13-145130
        #图片文件路径：../images/2024-11-13/...
        dirname=datetime.datetime.now().strftime("%Y-%m-%d")
        #盘对dirname文件夹是否已存在，若不存在则创建文件夹
        #../images/2024-11-13
        if not os.path.exists("../images/"+dirname):
            os.mkdir("../images/"+dirname)
        filename=sys._getframe().f_back.f_code.co_name+datetime.datetime.now().strftime("%Y-%m-%d-%H%M%S")+".png"
        self.driver.save_screenshot("../images/"+dirname+"/"+filename)


BlogDriver=Driver()